Procedurally generated adventure system